package com.ruoyi.db.domain.system;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 【请填写功能名称】对象 pc_raise_config
 * 
 * @author ruoyi
 * @date 2022-08-05
 */
@ApiModel(value = "PcRaiseConfig",description = "【请填写功能名称】对象 pc_raise_config")
public class PcRaiseConfig extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 活动配置表ID */
    private Long id;

    /** 活动名称 */
    @ApiModelProperty(value="活动名称",name="PcRaiseConfig$raiseName")
    @Excel(name = "活动名称")
    private String raiseName;

    /** 活动类别1,2 */
    @ApiModelProperty(value="活动类别1,2",name="PcRaiseConfig$raiseType")
    @Excel(name = "活动类别1,2")
    private Integer raiseType;

    /** 活动开始时间 */
    @ApiModelProperty(value="活动开始时间",name="PcRaiseConfig$startTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "活动开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /** 持续的小时数 */
    @ApiModelProperty(value="持续的小时数",name="PcRaiseConfig$continueHour")
    @Excel(name = "持续的小时数")
    private Long continueHour;

    /** 可预约的小时数 */
    @ApiModelProperty(value="可预约的小时数",name="PcRaiseConfig$orderHour")
    @Excel(name = "可预约的小时数")
    private Long orderHour;

    /** 每一期众筹成功增加的比例 */
    @ApiModelProperty(value="每一期众筹成功增加的比例",name="PcRaiseConfig$amountAddRate")
    @Excel(name = "每一期众筹成功增加的比例")
    private BigDecimal amountAddRate;

    /** 下一期活动开始间隔小时数 */
    @ApiModelProperty(value="下一期活动开始间隔小时数",name="PcRaiseConfig$nextHour")
    @Excel(name = "下一期活动开始间隔小时数")
    private Long nextHour;

    /** 收益比例 */
    @ApiModelProperty(value="收益比例",name="PcRaiseConfig$earnRate")
    @Excel(name = "收益比例")
    private BigDecimal earnRate;

    /** 说明 */
    @ApiModelProperty(value="说明",name="PcRaiseConfig$content")
    @Excel(name = "说明")
    private String content;

    /** 最小参与金额 */
    @ApiModelProperty(value="最小参与金额",name="PcRaiseConfig$minTakeAmount")
    @Excel(name = "最小参与金额")
    private BigDecimal minTakeAmount;

    /** 最大参与金额 */
    @ApiModelProperty(value="最大参与金额",name="PcRaiseConfig$maxTakeAmount")
    @Excel(name = "最大参与金额")
    private BigDecimal maxTakeAmount;

    /** 活动目标金额 */
    @ApiModelProperty(value="活动目标金额",name="PcRaiseConfig$totalAmount")
    @Excel(name = "活动目标金额")
    private BigDecimal totalAmount;

    /** 每一期众筹成功参与金藻限制增加的比例 */
    @ApiModelProperty(value="每一期众筹成功参与金藻限制增加的比例",name="PcRaiseConfig$limitAddRate")
    @Excel(name = "每一期众筹成功参与金藻限制增加的比例")
    private BigDecimal limitAddRate;
    /** 每一期众筹成功参与金藻限制增加的比例 */
    @ApiModelProperty(value="是否删除,1删除，0正常",name="PcRaiseConfig$isDelete")
    @Excel(name = "是否删除,1删除，0正常")
    private Integer isDelete;

    public Integer getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    public Integer getIsOver() {
        return isOver;
    }

    public void setIsOver(Integer isOver) {
        this.isOver = isOver;
    }

    /** 每一期众筹成功参与金藻限制增加的比例 */
    @ApiModelProperty(value="是否结束,1删除,0正常",name="PcRaiseConfig$iOver")
    @Excel(name = "是否结束,1删除,0正常")
    private Integer isOver;

    public Long getFirstOrderHour() {
        return firstOrderHour;
    }

    public void setFirstOrderHour(Long firstOrderHour) {
        this.firstOrderHour = firstOrderHour;
    }

    /** 每一期众筹成功参与金藻限制增加的比例 */
    @ApiModelProperty(value="优先预约的小时数",name="PcRaiseConfig$firstOrderHour")
    @Excel(name = "优先预约的小时数")
    private Long firstOrderHour;

    private String masterImg;

    public String getMasterImg() {
        return masterImg;
    }

    public void setMasterImg(String masterImg) {
        this.masterImg = masterImg;
    }

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setRaiseName(String raiseName) 
    {
        this.raiseName = raiseName;
    }

    public String getRaiseName() 
    {
        return raiseName;
    }
    public void setRaiseType(Integer raiseType) 
    {
        this.raiseType = raiseType;
    }

    public Integer getRaiseType() 
    {
        return raiseType;
    }
    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }
    public void setContinueHour(Long continueHour) 
    {
        this.continueHour = continueHour;
    }

    public Long getContinueHour() 
    {
        return continueHour;
    }
    public void setOrderHour(Long orderHour) 
    {
        this.orderHour = orderHour;
    }

    public Long getOrderHour() 
    {
        return orderHour;
    }
    public void setAmountAddRate(BigDecimal amountAddRate) 
    {
        this.amountAddRate = amountAddRate;
    }

    public BigDecimal getAmountAddRate() 
    {
        return amountAddRate;
    }
    public void setNextHour(Long nextHour) 
    {
        this.nextHour = nextHour;
    }

    public Long getNextHour() 
    {
        return nextHour;
    }
    public void setEarnRate(BigDecimal earnRate) 
    {
        this.earnRate = earnRate;
    }

    public BigDecimal getEarnRate() 
    {
        return earnRate;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }
    public void setMinTakeAmount(BigDecimal minTakeAmount) 
    {
        this.minTakeAmount = minTakeAmount;
    }

    public BigDecimal getMinTakeAmount() 
    {
        return minTakeAmount;
    }
    public void setMaxTakeAmount(BigDecimal maxTakeAmount) 
    {
        this.maxTakeAmount = maxTakeAmount;
    }

    public BigDecimal getMaxTakeAmount() 
    {
        return maxTakeAmount;
    }
    public void setTotalAmount(BigDecimal totalAmount) 
    {
        this.totalAmount = totalAmount;
    }

    public BigDecimal getTotalAmount() 
    {
        return totalAmount;
    }
    public void setLimitAddRate(BigDecimal limitAddRate) 
    {
        this.limitAddRate = limitAddRate;
    }

    public BigDecimal getLimitAddRate() 
    {
        return limitAddRate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("raiseName", getRaiseName())
            .append("raiseType", getRaiseType())
            .append("startTime", getStartTime())
            .append("continueHour", getContinueHour())
            .append("orderHour", getOrderHour())
            .append("amountAddRate", getAmountAddRate())
            .append("nextHour", getNextHour())
            .append("earnRate", getEarnRate())
            .append("content", getContent())
            .append("minTakeAmount", getMinTakeAmount())
            .append("maxTakeAmount", getMaxTakeAmount())
            .append("totalAmount", getTotalAmount())
            .append("limitAddRate", getLimitAddRate())
            .toString();
    }
}
